為了給多個國家的使用者使用,大部份 App 都會有支援多國語系,使 App 根據語言設定,進而顯示不同的文本
設定該專案支援 繁體中文 的語系
LocalizationDemo → PROJECT → Info → Localizations → 「+」 → Chinese, Traditional(zh-Hant)
按 Finish
新增繁體中文的多國語系檔
在資料夾上點選右鍵 → New File
新增 Strings File
命名
設定 Localizable.strings 所支援的多國語系
點擊 Localizable.strings → show the file inspector → 點擊 Localize → 選擇要支援的其中一種語系即可
勾選其他未被勾選的語系
將未被勾選的打勾
勾選後,展開左側的 Localizable.strings,在左方檔案夾就會多出 繁體中文檔
這時會看到有兩個多國語系檔,分別是英文、繁體中文。
在英文、繁體中文的多國語文件下新增程式碼
以 key、value 的型式,並記得在結尾加入 “;” 來區隔每組的多國語。
英文檔:
中文檔:
將多國語系套用在現有的 label 上
在將多國套用在 label 前,為了方便起見,可以寫一個 function 方便呼叫
/// 簡便翻譯
/// - Parameters:
/// - key: 在 LocalizableStrings 裡面定義的 Key
/// - Returns: 在 LocalizableStrings 裡面定義的 Value
func transalte(LocalizedString key: String) -> String {
// 設定多國語系,填入key值
return NSLocalizedString(key, comment: "")
}
將多國語系套用在現有的 label 上
大功告成!
GitHub - LocalizationLabelDemo
明天將會介紹「依據使用者裝置所設定的語系」顯示「App Icon 的名稱 (InfoPlist.strings)」所要的語系